#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
数据库迁移工具
用于检查和执行数据库迁移，确保数据库结构与当前应用版本兼容
"""

import os
import sys
from db_migration import init_database, get_current_db_version, DB_VERSIONS, verify_database_integrity

def main():
    """主函数，执行数据库迁移"""
    print("数据库迁移工具")
    print("=" * 50)
    
    # 检查当前数据库版本
    current_version = get_current_db_version()
    latest_version = DB_VERSIONS[-1]['version']
    
    print(f"当前数据库版本: {current_version}")
    print(f"最新数据库版本: {latest_version}")
    
    # 执行迁移
    if current_version < latest_version:
        print("\n需要执行数据库迁移...")
        success = init_database()
        if success:
            print("\n数据库迁移成功完成！")
            print(f"数据库已更新到版本 {latest_version}")
        else:
            print("\n数据库迁移失败！")
            return 1
    else:
        print("\n数据库已是最新版本，无需迁移")
    
    # 验证数据库完整性
    print("\n正在验证数据库完整性...")
    if verify_database_integrity():
        print("数据库完整性验证通过")
    else:
        print("数据库完整性验证失败！")
        return 1
    
    return 0

if __name__ == "__main__":
    sys.exit(main())